home *** CD-ROM | disk | FTP | other *** search
/ InfoMagic Internet Tools 1993 July / Internet Tools.iso / RockRidge / mail / sendmail / sendmail-5.65c+IDA-1.4.4.1 / src / Makefile < prev    next >
Encoding:
Makefile  |  1991-08-14  |  8.5 KB  |  212 lines

  1. #
  2. # Copyright (c) 1988 Regents of the University of California.
  3. # All rights reserved.
  4. #
  5. # Redistribution and use in source and binary forms are permitted
  6. # provided that the above copyright notice and this paragraph are
  7. # duplicated in all such forms and that any documentation,
  8. # advertising materials, and other materials related to such
  9. # distribution and use acknowledge that the software was developed
  10. # by the University of California, Berkeley.  The name of the
  11. # University may not be used to endorse or promote products derived
  12. # from this software without specific prior written permission.
  13. # THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
  14. # IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
  15. # WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  16. #
  17. #    @(#)Makefile    5.11 (Berkeley) 1/3/89
  18. #    @(#)$Id: Makefile,v 1.17 1991/08/14 18:28:19 paul Exp $
  19. #
  20. HDRS=    conf.h mailstats.h sendmail.h useful.h flock.h def.h
  21. SRCS=    alias.c arpadate.c clock.c collect.c conf.c convtime.c daemon.c \
  22.     deliver.c domain.c envelope.c err.c getloadavg.c headers.c \
  23.     macro.c main.c parseaddr.c queue.c readcf.c recipient.c \
  24.     savemail.c srvrsmtp.c stab.c stats.c sysexits.c trace.c \
  25.     usersmtp.c util.c ../ida/charset/strcnv.c flock.c setenv.c \
  26.     syslog.c vprintf.c version.c 
  27. OBJS=    alias.o arpadate.o clock.o collect.o conf.o convtime.o daemon.o \
  28.     deliver.o domain.o envelope.o err.o getloadavg.o headers.o \
  29.     macro.o main.o parseaddr.o queue.o readcf.o recipient.o \
  30.     savemail.o srvrsmtp.o stab.o stats.o sysexits.o trace.o \
  31.     usersmtp.o util.o strcnv.o flock.o setenv.o syslog.o vprintf.o \
  32.     version.o
  33. CONFIGS = \
  34.     config/3b1.h      config/dynix.h    config/ptx.h \
  35.     config/aix3.h     config/hpux.h     config/riscos.h \
  36.     config/aixrt.h    config/irix.h     config/sunos4.h \
  37.     config/bsd43.h    config/isc.h      config/ultrix3.h \
  38.     config/bsd44.h    config/next.h     config/ultrix4.h \
  39.     config/convex.h   config/osx.h      config/umax.h \
  40.     config/domainos.h 
  41. MAN=    sendmail.0 newaliases.0 aliases.0
  42.  
  43. SHELL=    /bin/sh
  44.  
  45. # Reasonable defaults.  A CPU type must usually be specified with ANSI C
  46. # compilers in order to select the correct byte-ordering in <arpa/nameser.h>
  47. # and to use the right getloadavg() routine.  IT'S LIKELY THAT THE -Dvax
  48. # BELOW WILL BE WRONG FOR YOUR MACHINE.
  49. CC=    cc
  50. #CC=    gcc -Dvax -ansi -fpcc-struct-return -fstrength-reduce 
  51. DEFS=    
  52. CFLAGS=    -O -I. ${DEFS} 
  53. LDFLAGS= 
  54. # Choose the dbm library based on the setting in conf.h.
  55. # GDBM: -lndbm, SDBM: -lsdbm, HDBM: -lhash, MDBM: -lmdbm, else: -ldbm or none
  56. DBMLIB=    
  57. LIBS=    ${DBMLIB}
  58. LIBDIR=    /usr/local/lib/mail
  59.  
  60. #
  61. # Look for any missing routines in ../support and add them as needed to the
  62. # SRCS/OBJS after copying them over to .  Also be sure that the pathnames
  63. # in conf.h reflect reality for your system.  Platform-specific settings
  64. # are located in config/foo.h where foo is the OS name.
  65. #
  66. # HP-UX systems will need strcasecmp.c and sysexits.h from ../support.
  67. #
  68. # HP Apollos running >= 10.1 will complain a lot about wrong const char
  69. #  usage since their ANSI include files are wrong.  You may need the
  70. #  stdarg.h file from the ../support directory.  The vendor libresolv
  71. #  file does not seem to work, best results are obtained by installing
  72. #  libresolv.a from Bind 4.8.3 sources (uxc has them).  Don't use -A nansi
  73. #  as getloadavg() will seg-fault.  The file /usr/include/apollo/time.h is
  74. #  missing the #ifdef _PROTOTYPE defines (see base.h in the same directory).
  75. #  HP and Apollo are made for each other - neither company really understands
  76. #  software.  The sendmail.fc file doesn't work.  See the top-level install
  77. #  file for comments about /bin/mail as well.  Then trade-in your Apollo.
  78. # CFLAGS=    -A ansi -O -I. ${DEFS} 
  79. #
  80. # Encore MultiMax will need a more recent version of the Bind software if
  81. #  the vendor libresolv.a file is missing the res_search() call.  
  82. # CFLAGS=    -q host_is_target -q optimize=time -O -I. ${DEFS}
  83. # PARALLEL=    4
  84. #
  85. # Sequents running Dynix can use the defaults above.  Systems running PTX
  86. #  will need
  87. # LIBS= -lsocket -linet -lnsl
  88. #  Uncommenting the next line will result in faster compilation with both.
  89. # PAR=    &
  90. #
  91. # Mips running RISC/os.
  92. # CFLAGS=    -systype bsd43 -O -Olimit 600 -I. ${DEFS} 
  93. # LIBS=    -ldbm -lmld
  94. #
  95. # Silicon Graphics Iris systems.  SGI broke vfork() for some mysterious reason.
  96. #  Add -lsun if #define YP is set in conf.h .
  97. # LIBS=    -lmld -lsun
  98. #
  99. # Interactive Systems Corp UNIX systems
  100. # LIBS=    -linet -ldbm -lc -lPW
  101. #
  102. # Next systems cannot use sendmail.fc as Mach lacks sbrk().  Don't use
  103. #  -fpcc-struct-return!
  104. # CFLAGS=    -fstrength-reduce -ansi -DNeXT -bsd -O -I. ${DEFS}
  105. #
  106. # Convexen will need to add -DSHARE to DEFS and -lshare to LIBS if the share
  107. #  scheduler is used.  -pcc is no longer required. /usr/include/arpa/nameser.h
  108. #  should have the bit field type changed from u_char to u_int and
  109. #  "|| defined(__convex__)" added to the #if clause for
  110. #  BIT_ZERO_ON_LEFT (BIG_ENDIAN).
  111. # DEFS=    -DSHARE
  112. # LIBS=    -ldbm -lshare
  113. #
  114. # AIX 3.0 systems can now use sendmail.fc with the LDFLAGS below.  RTs under
  115. #  AIX can't use sendmail.fc and will also need a ndbm replacement.  AIX should
  116. #  really be junked, but that's another story.
  117. # CFLAGS=    -qlanglvl=ansi -O -I. ${DEFS}    # AIX on both RS/6000 and PC/RT
  118. # LDFLAGS=    -bnso -bI:/lib/syscalls.exp    # AIX on RS/6000 only
  119. # LIBS=    -lc -lbsd -lm                # AIX on RS/6000 only
  120. #
  121. # Suns with shared libraries need to be linked with -Bstatic for reliable
  122. #  operation.  If when sendmail.fc is used and the executable either complains
  123. #  when re-building the alias database or spawns runaway child processes,
  124. #  then you have the localtime() bug introduced in SUNOS 4.1 (it stomps
  125. #  on byte 9 of an 8 byte malloc).  Use ../uiuc/malloc.c or get the fix
  126. #  from SUN.  If your SUN has more 16 Mbytes of memory and running sendmail
  127. #  crashes it, you have the 'pmeg' bug.  Get patch 100092-03 and install it.
  128. #  It's available via anon-FTP from princeton.edu in
  129. #  pub/sun-fixes/sunos4.1/{100092-03.tar.Z,README.100092-03}
  130. # CFLAGS= -Bstatic -O -I. ${DEFS} 
  131. #
  132. # Get and install Bind 4.8.3 if your libc.a || libresolv.a lack the 
  133. # res_search() call.
  134. #
  135.  
  136. # One of sendmail or dsendmail to set your local default make target
  137. #all:    dsendmail
  138. all:    sendmail
  139.  
  140. # The date sendmail was compiled is written to the freeze file,
  141. # to avoid reading in a .fc file created by a different version.
  142. sendmail:${PAR} ${OBJS}
  143.     echo 'char datecompiled[] = "' `date` '";' >datecompiled.c
  144.     ${CC} ${CFLAGS} ${LDFLAGS} -o $@ datecompiled.c ${OBJS} ${LIBS}
  145.     size sendmail; ls -l sendmail; ${WHAT} < version.o
  146.  
  147. dsendmail:${PAR} ${OBJS}
  148.     echo 'char datecompiled[] = "' `date` '";' >datecompiled.c
  149.     ${CC} ${CFLAGS} ${LDFLAGS} -o sendmail datecompiled.c ${OBJS} ${LIBS} -lresolv
  150.     size sendmail; ls -l sendmail; ${WHAT} < version.o
  151.  
  152. install: ${MAN}
  153. #    install -c -s -o root -m 4511 sendmail ${DESTDIR}/usr/lib
  154.     install -c -s -o root -m 4511 sendmail ${DESTDIR}/usr/sbin
  155.     -mkdir ${DESTDIR}/${LIBDIR}
  156.     -mkdir ${DESTDIR}/${LIBDIR}/char
  157. #    install -c -o bin -g bin -m 644 /dev/null ${DESTDIR}/etc/sendmail.fc
  158.     install -c -o bin -g bin -m 666 /dev/null ${DESTDIR}/${LIBDIR}/sendmail.st
  159.     install -c -o bin -g bin -m 444 sendmail.hf ${DESTDIR}/${LIBDIR}/sendmail.hf
  160.     install -c -o bin -g bin -m 444 sendmail.0 ${DESTDIR}/usr/man/cat8
  161.     install -c -o bin -g bin -m 444 aliases.0 ${DESTDIR}/usr/man/cat5
  162.     install -c -o bin -g bin -m 444 newaliases.0 ${DESTDIR}/usr/man/cat1
  163.     -mkdir ${DESTDIR}/usr/spool/mqueue
  164.     chown root.wheel ${DESTDIR}/usr/spool/mqueue
  165.     chmod 755 ${DESTDIR}/usr/spool/mqueue
  166.     rm -f ${DESTDIR}/usr/ucb/newaliases
  167. #    ln -s ${DESTDIR}/usr/lib/sendmail ${DESTDIR}/usr/ucb/newaliases
  168.     cd ${DESTDIR}/usr/sbin; rm -f newaliases mailq; ln sendmail mailq; ln sendmail newaliases
  169.     rm -f ${DESTDIR}/usr/ucb/mailq
  170.     ln -s ${DESTDIR}/usr/lib/sendmail ${DESTDIR}/usr/ucb/mailq
  171.  
  172. strcnv.o:    ../ida/charset/strcnv.c
  173.     ${CC} ${CFLAGS} -DMAPDIR=\"${DESTDIR}/${LIBDIR}/char\" -c \
  174.         ../ida/charset/strcnv.c
  175.  
  176. newaliases.0:    newaliases.1
  177.     nroff -man newaliases.1 > newaliases.0
  178.  
  179. aliases.0:    aliases.5
  180.     nroff -man aliases.5 > aliases.0
  181.  
  182. sendmail.0:    sendmail.8
  183.     nroff -man sendmail.8 > sendmail.0
  184.  
  185. clean: ${SRCS}
  186.     rm -f ${OBJS} core sendmail a.out Version.o datecompiled.*
  187.  
  188. cleandir: clean
  189.     rm -f ${MAN} tags .depend
  190.  
  191. depend: ${SRCS} ${HDRS}
  192.     mkdep ${CFLAGS} ${SRCS}
  193.  
  194. prt:
  195.     @(pr -f READ_ME NOTES Makefile; pr -f -b *.h ${SRCS}) | \
  196.         out -dest 3800 -bin 38 -pagedef L66 -font gt12
  197.  
  198. tags: ${SRCS}
  199.     ctags ${SRCS}
  200.  
  201. lint: ${SRCS}
  202.     lint -chpb -I. ${DEFS} ${SRCS}
  203.  
  204. # However we put in one default dependency, to minimize the problems of those
  205. # who don't do a 'make depend'
  206.  
  207. $(OBJS):    $(HDRS) $(CONFIGS)
  208.  
  209. # DO NOT DELETE THIS LINE -- mkdep uses it.
  210. # DO NOT PUT ANYTHING AFTER THIS LINE, IT WILL GO AWAY.
  211.  
  212.